Spark Developer: курс по инструментам обработки Big Data от Otus
Вы научитесь
Программа курса
Онлайн-курс познакомит вас с особенностями работы с экосистемой Hadoop и Spark-приложениями, после чего вы закрепите полученные знания на практике и разработаете ETL-систему в качестве итогового проекта.
Scala
Познакомитесь с синтаксисом мультипарадигмального языка, научитесь читать код и писать простые приложения. Освоите работу с библиотеками, разберёте инструменты обработки данных, после чего создадите собственный Scala-проект и соберёте его с помощью SBT. На примере проекта из домашнего задания рассмотрите проблемы при сборке в Big Data, а также сможете уверенно пользоваться JSON-массивами.
Познакомитесь с синтаксисом мультипарадигмального языка, научитесь читать код и писать простые приложения.
Освоите работу с библиотеками, разберёте инструменты обработки данных, после чего создадите собственный Scala-проект и соберёте его с помощью SBT.
На примере проекта из домашнего задания рассмотрите проблемы при сборке в Big Data, а также сможете уверенно пользоваться JSON-массивами.
Hadoop
Познакомитесь с экосистемой для обработки больших объёмов данных, разберёте основные дистрибутивы CDH/HDP/CDP. Рассмотрите возможности системы для хранения данных, изучите архитектуру и роль Zookeeper в управлении файлами. Получите представление о системах контейнеризации и узнаете, в каких случаях применяется MapReduce. Сможете настраивать степень сжатия при записи данных, а также научитесь подбирать подходящие форматы хранения под разные задачи. Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Познакомитесь с экосистемой для обработки больших объёмов данных, разберёте основные дистрибутивы CDH/HDP/CDP.
Рассмотрите возможности системы для хранения данных, изучите архитектуру и роль Zookeeper в управлении файлами.
Получите представление о системах контейнеризации и узнаете, в каких случаях применяется MapReduce.
Сможете настраивать степень сжатия при записи данных, а также научитесь подбирать подходящие форматы хранения под разные задачи.
Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Spark
Сможете создавать несложные Spark-приложения, а также описывать их архитектуру и понимать назначение. Построите результирующий отчет на основе raw data с использованием Spark и различных API, после чего опубликуете готовую аналитическую витрину на GitHub. Освоите методы оптимизации запросов Spark, а также научитесь использовать интерфейс для выявления проблем с производительностью. С помощью DataSource API V2 разработаете собственный Spark-коннектор для настройки взаимодействия с любыми сервисами. Научитесь писать автоматические тесты в виде кода на Scala с описанием методов для Spark job с помощью Idea Community. Освоите машинное обучение моделей и их применение на больших объемах данных с помощью Spark и XGBoost.
Сможете создавать несложные Spark-приложения, а также описывать их архитектуру и понимать назначение.
Построите результирующий отчет на основе raw data с использованием Spark и различных API, после чего опубликуете готовую аналитическую витрину на GitHub.
Освоите методы оптимизации запросов Spark, а также научитесь использовать интерфейс для выявления проблем с производительностью.
С помощью DataSource API V2 разработаете собственный Spark-коннектор для настройки взаимодействия с любыми сервисами.
Научитесь писать автоматические тесты в виде кода на Scala с описанием методов для Spark job с помощью Idea Community.
Освоите машинное обучение моделей и их применение на больших объемах данных с помощью Spark и XGBoost.
Streaming
Сможете управлять топиками и данными распределённого сервиса очередей, а также преобразовывать форматы. Научитесь проектировать приложения для потоковой обработки данных с использованием дискретизированных потоков DStreams и библиотеки Structured Streaming. Изучите способы использования предобученных моделей в Spark Structured Streaming благодаря приложениям потоковой передачи на базе Dataframe и Dataset. Подберёте фреймворк, который максимально будет подходить для обработки потоковых данных, а также освоите базовые операции из API Flink. Научитесь проектировать приложения с использованием Flink для реализации анализа графиков и увеличения скорости обработки данных в режиме реального времени. Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Сможете управлять топиками и данными распределённого сервиса очередей, а также преобразовывать форматы.
Научитесь проектировать приложения для потоковой обработки данных с использованием дискретизированных потоков DStreams и библиотеки Structured Streaming.
Изучите способы использования предобученных моделей в Spark Structured Streaming благодаря приложениям потоковой передачи на базе Dataframe и Dataset.
Подберёте фреймворк, который максимально будет подходить для обработки потоковых данных, а также освоите базовые операции из API Flink.
Научитесь проектировать приложения с использованием Flink для реализации анализа графиков и увеличения скорости обработки данных в режиме реального времени.
Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Apache Hive
Познакомитесь с предназначением, возможностями и архитектурой приложений для распределенных SQL-запросов. Научитесь писать запросы на HiveQL и создадите аналитические таблицы по результатам обработки Big Data в Hive.
Познакомитесь с предназначением, возможностями и архитектурой приложений для распределенных SQL-запросов.
Научитесь писать запросы на HiveQL и создадите аналитические таблицы по результатам обработки Big Data в Hive.
Обслуживающие системы
Освоите инструменты Oozie и Airflow для оркестрации ETL-процессов, научитесь загружать данные из внешних систем и проверять качество данных. Научитесь настраивать мониторинг с помощью Grafana, а также сможете собирать логи Spark-приложений для быстрого реагирования на инфраструктурные проблемы. Узнаете, как правильно настраивать процессы с CI/CD-поддержкой для Spark и Hive, учитывая принципы обеспечения качества. Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Освоите инструменты Oozie и Airflow для оркестрации ETL-процессов, научитесь загружать данные из внешних систем и проверять качество данных.
Научитесь настраивать мониторинг с помощью Grafana, а также сможете собирать логи Spark-приложений для быстрого реагирования на инфраструктурные проблемы.
Узнаете, как правильно настраивать процессы с CI/CD-поддержкой для Spark и Hive, учитывая принципы обеспечения качества.
Зададите интересующие вас вопросы наставникам, получите обратную связь по выполненным домашним заданиям.
Проектная работа
Построите ETL-систему на основе Hadoop: от загрузки данных из внешних источников и их обработки с помощью Hive до проектирования лямбда-архитектуры для получения аналитической информации в Spark-приложении. Познакомитесь с правилами работы над проектом и требованиями к материалу и технической документации. Получите возможность задать вопросы и обсудить проблемы, возникающие при выполнении ДЗ и выпускной работы. Презентуете готовый проект экспертам и получите обратную связь и развёрнутые комментарии по улучшениям и доработкам.
Познакомитесь с правилами работы над проектом и требованиями к материалу и технической документации.
Получите возможность задать вопросы и обсудить проблемы, возникающие при выполнении ДЗ и выпускной работы.
Презентуете готовый проект экспертам и получите обратную связь и развёрнутые комментарии по улучшениям и доработкам.